package 扩展类

import (
	"strconv"
)

// 取十六进制文本 返回一个字符串，代表指定数值的十六进制形式。
// 调用格式：
// v := 取十六进制文本(n)
// 参数：
// n 整数型 - 欲取进制文本的数值
// 返回值：
// 字符串类型 - 整数n的十六进制形式
func X取十六进制文本(n int) string {
	return strconv.FormatInt(int64(n), 16)
}

// X取八进制文本 返回一个字符串，代表指定数值的八进制形式。
// 调用格式：
// v := 取八进制文本(n)
// 参数：
// n 整数型 - 欲取进制文本的数值
// 返回值：
// 字符串类型 - 整数n的八进制形式
func X取八进制文本(n int) string {
	return strconv.FormatInt(int64(n), 8)
}

// X十六进制 转整数返回一个整数，代表指定十六进制文本常量对应的整数值。
// 本命令在编译时被直接预处理为整数型参量值，不影响程序执行效率。
// 调用格式：
// v := 十六进制("0x1234")
// 参数：
// s 文本型 - 十六进制文本常量
// 返回值：
// 整数型 - 十六进制文本常量对应的整数值
func X十六进制(s string) int {
	n, _ := strconv.ParseInt(s, 0, 0)
	return int(n)
}

// X二进制 转整数返回一个整数，代表指定二进制文本常量对应的整数值。
// 本命令在编译时被直接预处理为整数型参量值，不影响程序执行效率。
// 调用格式：
// v := 二进制("1010")
// 参数：
// s 文本型 - 二进制文本常量
// 返回值：
// 整数型 - 二进制文本常量对应的整数值
func X二进制(s string) int {
	n, _ := strconv.ParseInt(s, 2, 0)
	return int(n)
}
